# Wasm

**描述：**

&emsp;&emsp;用于提供 WASM 相关功能的模块。

## executeMainFileAsync

**类型：** 函数。

**描述：**

&emsp;&emsp;异步加载并执行一个主 WASM 模块文件 (例如 init.wasm)。

**签名：**
```tl
executeMainFileAsync: function(self: Wasm, filename: string): boolean
```

**参数：**

| 参数名 | 类型 | 描述 |
| --- | --- | --- |
| filename | string | 主 WASM 模块文件的名称。 |

**返回值：**

| 返回类型 | 描述 |
| --- | --- |
| boolean | 是否成功执行主 WASM 模块文件。 |

## buildWaAsync

**类型：** 函数。

**描述：**

&emsp;&emsp;从 Wa-lang 项目异步构建一个 WASM 模块文件 (例如 init.wasm)。

**签名：**
```tl
buildWaAsync: function(self: Wasm, fullPath: string): string
```

**用法示例：**
```tl
thread(function()
	local result = Wasm:buildWaAsync("/path/to/wa-lang/project/")
	if result == "" then
		print("Built successfully!")
	else
		print("Failed to build, due to " .. result)
	end
end)
```

**参数：**

| 参数名 | 类型 | 描述 |
| --- | --- | --- |
| fullPath | string | Wa-lang 项目的完整路径。 |

**返回值：**

| 返回类型 | 描述 |
| --- | --- |
| string | 构建 WASM 模块文件的结果。 |

## formatWaAsync

**类型：** 函数。

**描述：**

&emsp;&emsp;异步格式化一个 Wa-lang 代码文件。

**签名：**
```tl
formatWaAsync: function(self: Wasm, fullPath: string): string
```

**用法示例：**
```tl
thread(function()
	local result = Wasm:formatWaAsync("/path/to/wa-lang/code/file.wa")
	if success == "" then
		print("Failed to format")
	else
		print("Formated code:" .. result)
	end
end)
```

**参数：**

| 参数名 | 类型 | 描述 |
| --- | --- | --- |
| fullPath | string | Wa-lang 代码文件的完整路径。 |

**返回值：**

| 返回类型 | 描述 |
| --- | --- |
| string | 格式化 Wa-lang 代码文件的结果。 |

## clear

**类型：** 函数。

**描述：**

&emsp;&emsp;清除正在运行的 WASM 模块并停止相关 WASM 运行时。

**签名：**
```tl
clear: function(self: Wasm)
```